Finding ID | Version | Rule ID | IA Controls | Severity |
---|---|---|---|---|
V-254561 | CNTR-R2-000150 | SV-254561r960792_rule | High |
Description |
---|
Kubelet is the primary agent on each node. The API server communicates with each kubelet to perform tasks such as starting/stopping pods. By default, kubelets allow all authenticated requests, even anonymous ones, without requiring any authorization checks from the API server. This default behavior bypasses any authorization controls put in place to limit what users may perform within the Kubernetes cluster. To change this behavior, the default setting of AlwaysAllow for the authorization mode must be set to "Webhook". |
STIG | Date |
---|---|
Rancher Government Solutions RKE2 Security Technical Implementation Guide | 2024-06-10 |
Check Text ( C-58045r918232_chk ) |
---|
Ensure authorization-mode is set correctly in the kubelet on each rke2 node. Run this command on each node: /bin/ps -ef | grep kubelet | grep -v grep If --authorization-mode is not set to "Webhook" or is not configured, this is a finding. |
Fix Text (F-57994r918233_fix) |
---|
Edit the RKE2 Configuration File /etc/rancher/rke2/config.yaml on every RKE2 node and set the following "kubelet-arg" argument: - authorization-mode=Webhook Once the configuration file is updated, restart the RKE2 Server or Agent. Run the command: systemctl restart rke2-server or systemctl restart rke2-agent |